# -*- coding: utf-8 -*-

import re
import string

def cz_man_names():
    o = open('cz_man_names_110531vp.lkp', 'r')
    r = [re.sub('\n', '', x) for x in o.readlines()]
    o.close()
    return r

def cz_woman_names():
    o = open('cz_woman_names_110531vp.lkp', 'r')
    r = [re.sub('\n', '', x) for x in o.readlines()]
    o.close()
    return r

if 0:
    mnamescz = cz_man_names()
    if 'JAN' in mnamescz: print 1
    print mnamescz[2:4]
    wnamescz = cz_woman_names()
    if 'EVA' in wnamescz: print 1
    print wnamescz[2:4]

def remove_eol(data):
    ''' remove end of line characters '''
    data = re.sub('\x0D\x0A', '', data)
    data = re.sub('\x0D', '', data)
    data = re.sub('\x0A', '', data)
    return data

def remove_titles(data):
    ''' remove (czech) titles '''

    data = re.sub('AKAD\.', '', data)
    data = re.sub('AK\.MAL\.', '', data)
    data = re.sub('ARCH\.', '', data)

    data = re.sub('BBS\.', '', data)
    data = re.sub('BC\.MBA', '', data)
    data = re.sub('BC\.', '', data)
   
    data = re.sub('CSC\.', '', data)

    data = re.sub('DOC\.', '', data)
    data = re.sub('DR\.', '', data)
    data = re.sub('DIS\.', '', data)

    data = re.sub('INGARCH\.', '', data)
    data = re.sub('ING\.CSC', '', data)
    data = re.sub('ING\.', '', data)
    data = re.sub('INGBC.', '', data)

    data = re.sub('JUDR\.', '', data)

    data = re.sub('KPT\.', '', data)

    data = re.sub('M\.B\.A', '', data)
    data = re.sub('MAL\.', '', data)
    data = re.sub('ML\.', '', data)
    data = re.sub('MGR\.', '', data)
    data = re.sub('MUDR\.', '', data)
    data = re.sub('MVDR\.', '', data)

    data = re.sub('NPOR\.', '', data)

    data = re.sub('PH\.D\.', '', data)
    data = re.sub('PH\.', '', data)
    data = re.sub('PHD\.', '', data)
    data = re.sub('PHDR\.', '', data)
    data = re.sub('PPLK\.', '', data)
    data = re.sub('PROF\.', '', data)

    data = re.sub('RNDR\.', '', data)

    # misspelled names
    data = re.sub('STANISL\.', 'STANISLAVA', data)

    return data


def ascii_upper(data):
    ''' 
    >>> toASCII('ÉĚÝÚÍÓÁĽŇ')
    
    '''
    data = re.sub('á', 'A', data)
    data = re.sub('Á', 'A', data)
    data = re.sub('ä', 'A', data)

    data = re.sub('Č', 'C', data)
    data = re.sub('č', 'C', data)

    data = re.sub('Ď', 'D', data)
    data = re.sub('ď', 'D', data)

    data = re.sub('É', 'E', data)
    data = re.sub('Ě', 'E', data)
    data = re.sub('ě', 'E', data)
    data = re.sub('é', 'E', data)

    data = re.sub('Í', 'I', data)
    data = re.sub('í', 'I', data)

    data = re.sub('Ľ', 'L', data)

    data = re.sub('Ň', 'N', data)
    data = re.sub('ň', 'N', data)

    data = re.sub('Ó', 'O', data)
    data = re.sub('Ö', 'O', data)
    data = re.sub('ó', 'O', data)
    data = re.sub('ö', 'O', data)

    data = re.sub('Š', 'S', data)
    data = re.sub('š', 'S', data)

    data = re.sub('Ť', 'T', data)
    data = re.sub('ť', 'T', data)

    data = re.sub('Ú', 'U', data)
    data = re.sub('ú', 'U', data)
    data = re.sub('ů', 'U', data)
    data = re.sub('ü', 'U', data)
    data = re.sub('Ű', 'U', data)
    data = re.sub('Ü', 'U', data)
    data = re.sub('Ů', 'U', data)

    data = re.sub('Ý', 'Y', data)
    data = re.sub('ý', 'Y', data)

    data = re.sub('Ř', 'R', data)
    data = re.sub('ř', 'R', data)

    data = re.sub('ň', 'N', data)

    data = re.sub('Ž', 'Z', data)
    data = re.sub('ž', 'Z', data)
    return data.upper()
